# main:main.o mytool1.o mytool2.o
# 	gcc -o main main.o mytool1.o mytool2.o

# main.o:main.c mytool1.h mytool2.h
# 	gcc -c main.c

# mytool1.o:mytool1.c mytool1.h
# 	gcc -c mytool1.c

# mytool2.o:mytool2.c mytool2.h
# 	gcc -c mytool2.c

# clean:
# 	rm -f *.o main

# # 改进一 使用变量
# OBJ = main.o mytool1.o mytool2.o
# make:$(OBJ)
# 	gcc -o main $(OBJ)
# main.o:main.c mytool1.h mytool2.h
# 	gcc -c main.c
# mytool1.o:mytool1.c mytool1.h
# 	gcc -c mytool1.c

# mytool2.o:mytool2.c mytool2.h
# 	gcc -c mytool2.c

# clean:
# 	rm -f main $(OBJ)

# 改进二 自动推导
CC = gcc
OBJ = main.o mytool1.o mytool2.o
make:$(OBJ)
	$(CC) -o main $(OBJ)

main.o:mytool1.h mytool2.h

mytool1.o:mytool1.h
mytool2.o:mytool2.h

.PHONY:clean

clean:
	rm -f main $(OBJ)